<script>
	import config from './config'
	import store from '@/store'
	import {
		getToken
	} from '@/utils/auth'
	import {
		refreshToken
	} from '@/api/system/biaochu'
	import checkVersion from '@/pages/lq-upgrade/checkVersion.js'
	import {
		cheakFile
	} from '@/api/system/cheakload.js'

	export default {
		onLaunch: function() {
			this.clearCache();
			this.initApp()
			var screenWidth = uni.getWindowInfo().screenWidth
			// console.log(screenWidth)
			if (screenWidth < 900) {
				// #ifndef H5
				// 非H5平台
				// 竖屏正方向
				plus.screen.lockOrientation('portrait-primary');
				// #endif
			} else {
				// #ifndef H5
				// 非H5平台
				// 横屏正方向
				plus.screen.lockOrientation('landscape-primary');
				// #endif
			}

			plus.runtime.getProperty(plus.runtime.appid, (appInfo) => {
				// appInfo为当前应用程序的所有信息
				//console.log(JSON.stringify(appInfo));
				// 获取版本名称
				//console.log(appInfo.version);
				uni.setStorageSync('version', appInfo.version);
				// 获取版本号
				//console.log(appInfo.versionCode);
				uni.setStorageSync('versionCode', appInfo.versionCode);
				// 获取当前应用id
				//console.log(appInfo.appid);
			});
		},
		methods: {
			// 初始化应用
			initApp() {
				// 初始化应用配置
				this.initConfig()
				// 检查用户登录状态
				//#ifdef H5
				this.checkLogin()
				//#endif
			},
			initConfig() {
				setInterval(function() {
					// 每隔10秒执行一次操作
					//console.log('---APP刷新refreshToken，准备')
					refreshToken().then(res => {
						console.log("刷新结果", res)
					}).catch(error => {
					//	console.log("刷新错误结果", error)
						//reject(error)
					})
				//	console.log('---APP刷新refreshToken，完成')
				}, 300000);
				this.globalData.config = config
				setTimeout(function() {
					var a = {}
					cheakFile().then(res => {
						// 获取系统信息
						var version = uni.getStorageSync('version');
						var versionCode = uni.getStorageSync('versionCode');
						//console.log(res)
						if (res.length > 0) {
							if (versionCode < res[0].versionnumber) {
								let name = res[0].versionname; //新版本名称
								let code = res[0].versionnumber; //新版本号（数字）
								let content = res[0].content; //更新内容
								let url = config.baseUrl_load + "/file/download?fileName=" + res[0]
									.fileurl; //app下载链接，（演示请换成真正在下载链接）
								//let url ="http://60.205.104.240:8080/common/download?fileName=UNI20220706200750.apk&delete=false"
								console.log(url)
								let forceUpdate = res[0].forceupdate; //是否强制更新
								a = {
									name, //最新版本名称
									code, //最新版本号
									content, //更新内容
									url, //下载链接
									forceUpdate //是否强制升级			  
								}
								checkVersion(a)
							}
						}

					}).catch(error => {
						reject(error)
					})
				}, 5000);

			},
			checkLogin() {
				if (!getToken()) {
					this.$tab.reLaunch('/pages/login')
				}
			},
			clearCache() {
				let os = plus.os.name;
				if (os == 'Android') {
					let main = plus.android.runtimeMainActivity();
					let sdRoot = main.getCacheDir();
					let files = plus.android.invoke(sdRoot, "listFiles");
					let len = files.length;
					for (let i = 0; i < len; i++) {
						let filePath = '' + files[i];
						plus.io.resolveLocalFileSystemURL(filePath, (entry) => {
							if (entry.isDirectory) {
								entry.removeRecursively((entry) => {
									// uni.showToast({
									// 	title: '缓存清理完成',
									// 	duration: 2000
									// });
									// this.formatSize();
								}, (e) => {
									console.log(e.message)
								});
							} else {
								entry.remove();
							}
						}, (e) => {
							//console.log('文件路径读取失败')
						});
					}
				} else { // ios  
					plus.cache.clear(() => {
						// uni.showToast({
						// 	title: '缓存清理完成',
						// 	duration: 2000
						// });
						// this.formatSize();
					});
				}
			},
		}
	}
</script>

<style lang="scss">
	@import "colorui/main.css";
	@import "colorui/icon.css";
	@import '@/static/scss/index.scss'
</style>